/**
 *****************************************************
 * @sourceName : Etc001l_p00Command.java
 *----------------------------------------------------
 * DESCRIPTION : 성과관리시스템  커맨드
 *****************************************************
 * DATE            AUTHOR           HISTORY
 *----------------------------------------------------
 *2007/06/12     (주)열음소프트       최 초 작 성
 *****************************************************
 */

package command;

import java.sql.Connection;
import java.util.ArrayList;
import java.util.HashMap;

import javax.servlet.http.*;

import command.Command;
import command.CommandException;
import db.CommonConnect;
import common.CommonUtil;
import db.QueryManager;
import db.DAO;

/**
 * Command 인터페이스를 implement 하여 구현된 command.
 * 
 */
public class IndexCommand extends Command {

	private String next;
	
	public IndexCommand(String next) {
		this.next=next;
	}

	/**
	 * 실제 요청을 받아 처리하는 메소드
	 * 요청을 받으면  요청을 처리하고 next 페이지를 돌려줌
	 * 
	 * @param req HttpServletRequest
	 * @throws CommandException
	 * @return next 이동할 페이지
	 */
	public String execute(HttpServletRequest req)
	throws CommandException {
		//DAO userdao = new DAO();
		ArrayList list =  null;
		HashMap listMap = new HashMap();
  
		Connection con = null;
		
		String ent_id = null;
		String ent_nm = null;
		
		String skin = null;
//		String main_logo = null;
		String main_logo_id = null;
		String main_logo_id_old =null;
		
		String layout_template = null;
		
		String giguan_yn = null;
		try {
			con = (new CommonConnect()).getConnection_ds1();

			
			HttpSession session = req.getSession(true);
			String train_url=req.getServerName();
			logger.debug(train_url);
			String[] param=null;

			
//  리스트 내역을 가져온다.
			param= new String[1];
			param[0] = train_url;

			String queryStr = QueryManager.getQuery("company_intro.query");

			list = DAO.select(con,queryStr,param);
			if (list==null || list.size()==0){
				throw new CommandException("This is not available company!");
			}
// 세션에 기업ID등등을 저장		
			listMap=(HashMap)list.get(0);
			ent_id =(String)listMap.get("ent_id");
			ent_nm =(String)listMap.get("ent_nm");
			skin=(String)listMap.get("skin");
//			main_logo=(String)listMap.get("main_logo");
			main_logo_id=(String)listMap.get("attach_id");
			main_logo_id_old=(String)listMap.get("attach_id_old");
			layout_template=(String)listMap.get("layout_template");
			
			/*기업의 소속기관 사용유무*/
			giguan_yn=(String)listMap.get("giguan_yn");
/*
			ent_id ="edubox";
			skin="1";
			layout_template="1";
			main_logo="/images/logo_01.gif";
			ent_nm = "에듀박스";
*/			
			session.setAttribute("ent_id", ent_id);
			session.setAttribute("ent_nm", ent_nm);
			session.setAttribute("skin", skin);
//			session.setAttribute("main_logo", main_logo);
			session.setAttribute("main_logo_id", main_logo_id);
			session.setAttribute("main_logo_id_old", main_logo_id_old);
			session.setAttribute("layout_template", layout_template);
			session.setAttribute("giguan_yn", giguan_yn);
			

// 리퀘스트에 모두 담는다.
			req.setAttribute("list_map",listMap);

//로그를 저장한다. 필요에 따라서 사용하며 세션이 있을 경우만 쓴다.			
//			String work_text="";//무슨일을 하는지 저장하고 싶은 내용을 적을 것;
//			saveLog(con,userId,work_text);			

		}catch (Exception ex) {
			try{

			}catch(Exception ee){}
			throw new CommandException(ex.getMessage());
		}finally {
			try{
				if (con!=null) con.close();
			}catch(Exception ee){}
		}
		return next;
	}
	


}
;
